package com.mariusz.data.dto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;

import com.mariusz.data.enums.PaymentsIntervals;

public class Rentier implements Serializable {

	private String name;
	private String document;
	private String telephone;
	private Date contractBeginDate;
	private Date contractEndDate;
	private Double depositAmount;
	private Double paymentAmount;
	private PaymentsIntervals paymentInterval;
	private Property property;
	private Room room;
	private List<Payment> payments;
	
	public Rentier(){
		payments = new ArrayList<Payment>();
		depositAmount = new Double(0);
		paymentAmount = new Double(0);
	}
	public void setName(String name) {
		this.name = name;
	}
	@XmlElement
	public String getName() {
		return name;
	}
	public void setDocument(String document) {
		this.document = document;
	}
	@XmlElement
	public String getDocument() {
		return document;
	}
	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}
	@XmlElement
	public String getTelephone() {
		return telephone;
	}
	public void setContractEndDate(Date contractEndDate) {
		this.contractEndDate = contractEndDate;
	}
	@XmlElement
	public Date getContractEndDate() {
		return contractEndDate;
	}
	public void setContractBeginDate(Date contractBeginDate) {
		this.contractBeginDate = contractBeginDate;
	}
	@XmlElement
	public Date getContractBeginDate() {
		return contractBeginDate;
	}
	public void setDepositAmount(Double depositAmount) {
		this.depositAmount = depositAmount;
	}
	@XmlElement
	public Double getDepositAmount() {
		return depositAmount;
	}
	public void setPaymentAmount(Double paymentAmount) {
		this.paymentAmount = paymentAmount;
	}
	@XmlElement
	public Double getPaymentAmount() {
		return paymentAmount;
	}
	public void setPaymentInterval(PaymentsIntervals paymentInterval) {
		this.paymentInterval = paymentInterval;
	}
	@XmlElement
	public PaymentsIntervals getPaymentInterval() {
		return paymentInterval;
	}
	public void setProperty(Property property) {
		this.property = property;
	}
	@XmlElement
	public Property getProperty() {
		return property;
	}
	public void setRoom(Room room) {
		this.room = room;
	}
	@XmlElement
	public Room getRoom() {
		return room;
	}
	@XmlElement(name="Payment")
	@XmlElementWrapper(name="Payments")
	public List<Payment> getPayments() {
		return payments;
	}
	
	public void setPayments(List<Payment> payments){
		this.payments = payments;
	}


	
}
